Ext
		.onReady(function() {
			var userIdStore = new Ext.data.Store(
					{
						fields : [ "userName", "userCode" ],
						proxy : {
							type : 'ajax',
							url : jypath
									+ '/customer/customer/userByProjectIdForGroup',
							reader : {
								type : 'json',
								root : 'root' // 数据
							}
						}
					});
			var formg = Ext
					.create(
							"Ext.form.Panel",
							{
								minHeight : 100,
								title : "查询条件",
								collapsible : true, // 可折叠
								autoScroll : false, // 自动创建滚动条
								defaultType : 'textfield',
								defaults : {
									anchor : '100%'
								},
								fieldDefaults : {
									labelWidth : 80,
									labelAlign : "right",
									margin : "5 0 0 0"
								},
								items : [
										{
											xtype : "container",
											layout : "hbox",
											items : [
													{
														xtype : 'combobox',
														style : 'position:absolute;left:15px;',
														id : 'cbstore',
														store : cbstore,
														displayField : "projectName",
														valueField : "id",
														fieldLabel : '项目名称',
														queryMode : 'local',
														typeAhead : true,
														value : projectId,
														listeners : {
															'change' : function(
																	value) {
																Ext
																		.getCmp(
																				'user')
																		.setValue(
																				"");
																userIdStore
																		.load({
																			params : {
																				'projectId' : value.lastValue
																			}
																		});
															},
															afterRender : function(
																	value) {
																userIdStore
																		.load({
																			params : {
																				'projectId' : value.lastValue
																			}
																		});
																gridStoreg
																		.getProxy().extraParams.projectId = value.lastValue;
																gridStoreg
																		.load();
															}
														}
													},
													{
														xtype : 'combobox',
														id : 'user',
														store : userIdStore,
														displayField : "userName",
														valueField : "userCode",
														fieldLabel : '&emsp;跟进人',
														name : 'userCode',
														queryMode : 'local'
													} ]
										}, {
											xtype : "container",
											layout : "hbox",
											items : [ {
												xtype : "datefield",
												name : "followTimeBefore",
												fieldLabel : "跟进开始日期",
												format : 'Y-m-d'
											}, {
												xtype : "datefield",
												name : "followTimeAfter",
												fieldLabel : "跟进结束日期",
												format : 'Y-m-d'
											} ]
										}, {
											xtype : "container",
											layout : "hbox",
											items : [ {
												xtype : "datefield",
												name : "nextFollowTimeBefore",
												fieldLabel : "提醒时间开始",
												format : 'Y-m-d'
											}, {
												xtype : "datefield",
												name : "nextFollowTimeAfter",
												fieldLabel : "提醒时间结束",
												format : 'Y-m-d'
											} ]
										}, {
											xtype : "container",
											layout : "hbox",
											items : [ {
												xtype : "checkboxgroup",
												id : "ckStatusg",
												name : "followModes",
												fieldLabel : "跟进方式",
												width : 460,
												items : [ {
													boxLabel : '来电',
													inputValue : '1'
												}, {
													boxLabel : '来访',
													inputValue : '2'
												}, {
													boxLabel : '信息',
													inputValue : '3'
												}, {
													boxLabel : '去电',
													inputValue : '4'
												}, {
													boxLabel : '拜访',
													inputValue : '5'
												}, {
													boxLabel : '微信',
													inputValue : '7'
												} ]
											} ]
										} ],
								buttons : [
										{
											xtype : "button",
											text : "查询",
											handler : function() {
												// 获取通过checkboxgroup定义的checkbox值
												// 跟进方式
												var ckStatusValue = Ext.getCmp(
														'ckStatusg')
														.getChecked();
												var ckStatus = "";
												Ext.Array
														.each(
																ckStatusValue,
																function(item) {
																	ckStatus += item.inputValue
																			+ ',';
																});
												gridStoreg.getProxy().extraParams.followModes = ckStatus;
												if (Ext.getCmp('cbstore')
														.getValue() == ""
														|| Ext
																.getCmp(
																		'cbstore')
																.getValue() == null) {
													Ext.Msg
															.alert('提示',
																	'请选择项目');
													return;
												}
												gridStoreg.getProxy().extraParams.projectId = Ext
														.getCmp('cbstore')
														.getValue();
												gridStoreg.load();
												var pagingTool = Ext
														.getCmp("pagingTool");
												pagingTool.moveFirst();// 跳至第一页
											}
										}, {
											xtype : "button",
											text : "清空",
											handler : function() {
												formg.getForm().reset();
											}
										} ]
							});

			var gridStoreg = Ext.create('Ext.data.Store', {
				id : "followListGridStoreg",
				fields : [ "id", "customerName", "customerPhone", "followTime",
						"followMode", "followContent", "followType",
						"userName", "nextFollowContent", "nextFollowTime",
						"recordUrl", "callStatus" ],
				pageSize : 10, // 页容量5条数据
				// 是否在服务端排序 （true的话，在客户端就不能排序）
				remoteSort : false,
				proxy : {
					type : 'ajax',
					url : jypath + '/customer/follow/list',
					actionMethods : {
						read : 'POST'
					},
					reader : { // 这里的reader为数据存储组织的地方，下面的配置是为json格式的数据，例如：[{"total":50,"rows":[{"a":"3","b":"4"}]}]
						type : 'json', // 返回数据类型为json格式
						root : 'rows', // 数据
						totalProperty : 'total' // 数据总条数
					}
				},
				autoLoad : false
			// 即时加载数据
			});

			gridStoreg.on("beforeload", function() {
				Ext.apply(gridStoreg.proxy.extraParams, formg.getForm()
						.getValues());
				var newResCode = "menu_0006_0002,menu_0003_0001";
				gridStoreg.proxy.extraParams.resourcesCode = newResCode;
			});

			var gridg = Ext
					.create(
							'Ext.grid.Panel',
							{
								// minHeight:500,
								store : gridStoreg,
								columnLines : true,
								columns : [
										{

											text : '操作',
											dataIndex : 'id',
											renderer : function(value,
													cellmeta, record, rowIndex,
													columnIndex, store) {
												var rec = gridg.getStore()
														.getAt(rowIndex);
												var html = "";
												if (rec.get('followType') == 2) {
													if (followDownLoad == false) {
														html += '<a href="javascript:genJin('
																+ value
																+ ','
																+ rec
																		.get('followType')
																+ ')">预览图片</a>&nbsp;&nbsp;';
													}

												} else if (rec
														.get('followType') == 3) {
													if (followDownLoad == false) {
														html += '<a href="javascript:genJin('
																+ value
																+ ','
																+ rec
																		.get('followType')
																+ ')">播放语音</a>&nbsp;&nbsp;';
													}

												}

												if (followDelete == false) {
													html += "<a href='javascript:del("
															+ rec.get('id')
															+ ")'>删除</a>";
												}

												return html;
												// return '<a
												// href="'+value+'"><img
												// src='+jypath+'"/resources/ExtJSicons/delete.png"></a>';
											},
											width : '10%'

										},
										{
											text : '客户名称',
											dataIndex : 'customerName',
											width : '6%'
										},
										{
											text : '手机',
											dataIndex : 'customerPhone',
											width : '8%'
										},
										{
											text : '跟进时间',
											dataIndex : 'followTime',
											renderer : function(value) {
												return Ext.Date.format(
														new Date(value),
														'Y-m-d G:i:s');
											},
											width : '10%'
										},
										{
											text : '跟进方式',
											dataIndex : 'followMode',
											renderer : function(val) {
												if (val == 1) {
													return '来电';
												} else if (val == 2) {
													return '来访';
												} else if (val == 3) {
													return '信息';
												} else if (val == 4) {
													return '去电';
												} else if (val == 5) {
													return '拜访';
												} else if (val == 6) {
													return '系统生成';
												} else if (val == 7) {
													return '微信';
												}
												return val;
											},
											width : '7%'
										},
										{
											text : '跟进内容',
											dataIndex : 'followContent',
											renderer : function(value,
													cellmeta, record, rowIndex,
													columnIndex, store) {
												var rec = record;
												var id = record.get("id");
												if (rec.get('followType') == 2) {
													var html = '<a href="javascript:genJin('
															+ id
															+ ','
															+ rec
																	.get('followType')
															+ ')">图片地址</a>';
													return html;
												} else if (rec
														.get('followType') == 3) {
													var html = '<a href="javascript:genJin('
															+ id
															+ ','
															+ rec
																	.get('followType')
															+ ')">语音地址</a>';
													return html;
												}
												if(value == null){
													value = '';
												}
												return '<span title="'+value+'">'+value+'</span>';
											},
											width : '15%'
										},
										{
											text : '电话录音',
											width : '10%',
											renderer : function(value,
													cellmeta, record, rowIndex,
													columnIndex, store) {
												var callStatus = record
														.get("callStatus");
												var result = "";
												if (null != callStatus
														&& callStatus != "") {
													if (callStatus == "0") {
														result = result
																+ "未取话单";
													} else if (callStatus == "1") {
														var recordUrl = record
																.get("recordUrl");
														result += '<a href="javascript:previewAudio(\''
																+ recordUrl
																+ '\')">听录音</a>';
													} else if (callStatus == "2") {
														result = result + "未接通";
													}
												}
												return result;
											}
										},
										{
											text : '提醒时间',
											dataIndex : 'nextFollowTime',
											minWidth : 150,
											renderer : function(value) {
												if (value) {
													return Ext.Date.format(
															new Date(value),
															'Y-m-d G:i:s');
												}
												return "";
											},
											width : '10%'
										}, {
											text : '提醒内容',
											dataIndex : 'nextFollowContent',
											width : '10%'
										}, {
											text : '跟进人',
											dataIndex : 'userName',
											width : '10%'
										} ],
								title : '客户跟进列表',
								dockedItems : [ {
									xtype : 'pagingtoolbar',
									store : gridStoreg, // GridPanel中使用的数据
									dock : 'bottom',
									displayInfo : true,
									emptyMsg : "没有数据",
									displayMsg : "显示从{0}条数据到{1}条数据，共{2}条数据",
									id : 'pagingTool'
								} ]
							});

			var viewport = Ext.create('Ext.Viewport', {
				layout : 'border',
				items : [ {
					region : 'north',
					items : formg
				}, {
					layout : 'fit',
					region : 'center',
					items : gridg
				} ]
			});

		});

function del(id) {
	Ext.MessageBox.confirm("提示", "是否删除该跟进记录?", function(btn, txt) {
		if (btn == "yes") {
			Ext.Ajax.request({
				url : jypath + '/customer/follow/delete',
				params : {
					id : id
				},
				method : 'POST',
				callback : function(options, success, response) {
					if (success) {
						Ext.MessageBox.alert("系统提示", "删除跟进记录成功");
						Ext.getCmp("pagingTool").moveFirst();
					} else {
						Ext.MessageBox.alert("系统提示", "删除跟进记录失败！");
					}
				}
			});
		}
	});
}

function previewImg(url) {
	var imgs = "<img style='width:auto;height:100%;margin:0 auto;' src='" + url
			+ "' />";
	var window = Ext.create('Ext.Window', {
		title : "图片预览",
		width : '100%',
		height : '100%',
		autoScroll : true,
		maximizable : false,
		layout : 'fit',
		html : imgs
	});
	window.show();
}

function genJin(id, type) {
	var gridStoreg_1 = Ext.create('Ext.data.Store', {
		fields : [ "id", "smallUrl", "createTime" ],
		pageSize : 10, // 页容量5条数据
		// 是否在服务端排序 （true的话，在客户端就不能排序）
		remoteSort : false,
		proxy : {
			type : 'ajax',
			url : jypath + '/customer/customer/imageList?objectId=' + id
					+ '&imgType=4',
			actionMethods : {
				read : 'POST'
			},
			reader : { // 这里的reader为数据存储组织的地方，下面的配置是为json格式的数据，例如：[{"total":50,"rows":[{"a":"3","b":"4"}]}]
				type : 'json', // 返回数据类型为json格式
				root : 'rows', // 数据
				totalProperty : 'total' // 数据总条数
			}
		},
		autoLoad : true
	// 即时加载数据
	});

	// gridStoreg.on("beforeload",function(){
	// Ext.apply(gridStoreg.proxy.extraParams,formg.getForm().getValues());
	// });

	var gridg = Ext
			.create(
					'Ext.grid.Panel',
					{
						minHeight : 600,
						store : gridStoreg_1,
						columnLines : true,
						columns : [
								{
									text : '创建日期',
									width : '30%',
									dataIndex : 'createTime',
									renderer : function(value) {
										return Ext.Date.format(new Date(value),
												'Y-m-d');
									}
								},
								{
									text : '附件类型',
									dataIndex : 'id',
									width : '20%',
									renderer : function(value, cellmeta,
											record, rowIndex, columnIndex,
											store) {
										var rec = gridg.getStore().getAt(
												rowIndex);
										if (type == 2) {
											return "图片";
										} else if (type == 3) {
											return "语音";
										}
									}
								},
								{
									text : '操作',
									dataIndex : 'smallUrl',
									width : '50%',
									renderer : function(value, cellmeta,
											record, rowIndex, columnIndex,
											store) {
										if (type == 2) {
											// var fileExtension =
											// value.substring(value.lastIndexOf('.')
											// + 1);
											// var html = '<a
											// href="'+jypath+'/common/file/downloadFile?fileUrl='+value+'&fileName=downfile.'+fileExtension+'">下载</a>';
											var html = '<a href="javascript:previewImg(\''
													+ value + '\')">预览</a>';
											return html;
										} else if (type == 3) {
											var html = '<audio controls="controls"> <source src="'
													+ value
													+ '" type="audio/mpeg"> </audio>'
											return html;
										}
										return "";
									}
								} ],
						dockedItems : [ {
							xtype : 'pagingtoolbar',
							store : gridStoreg_1, // GridPanel中使用的数据
							dock : 'bottom',
							displayInfo : true,
							emptyMsg : "没有数据",
							displayMsg : "显示从{0}条数据到{1}条数据，共{2}条数据"
						} ]
					});
	var window = Ext.create('Ext.Window', {
		title : "附件列表",
		width : 650,
		height : 300,
		//plain: true,
		modal : true,
		headerPosition : 'top',
		items : [ gridg ]
	});
	window.show();
}

function previewAudio(url) {
	var html = '<audio controls="controls"> <source src="' + url
			+ '" type="audio/mpeg"> </audio>';
	var window = Ext.create('Ext.Window', {
		title : "播放录音",
		width : '300',
		height : '80',
		modal : true,
		//autoScroll:true,
		//maximizable:false,
		layout : 'fit',
		html : html
	});
	window.show();
}
